using System;
using System.Collections.Generic;
using System.Text;

namespace Wicresoft.Messages
{
    public enum MessageStatusCode
    {
        Normal = 100,
        Deleted = 200,
        TotallyDeleted = 300,
    }

    public enum MessageProcessStatusCode
    {
        UnDistributed = 0,
        Distributed = 100,
        Failed = 200,
        Filtered = 300,
        Canceled = 400,
        PartlyDistributed = 500,
    }

    public enum FailedMessageProcessStatusCode
    {
        UnDistributed = 0,
        Distributed = 100,
        Failed = 200,
        PartlyDistributed = 500,
    }

    public enum QueueStatusCode
    {
        Normal = 100,
        Deleted = 200,
        TotallyDeleted = 300,
    }

    public enum QueueProcessStatusCode
    {
        UnPosted = 0,
        Posted = 100,
        Failed = 200,
        Unable = 300,
        Canceled = 400,
        OnHold = 500,
        Read = 600,
        Queued = 700,
        NotSubscripted = 800,
    }

    public enum FeedBackStatusCode
    {
        Normal = 100,
        Deleted = 200,
        TotallyDeleted = 300,
    }

    public enum FeedBackProcessStatusCode
    {
        UnRead = 100,
        Read = 200,
        Filtered = 300,
    }

    public enum TemplateReplaceKey
    {
        Title,
        Message,
        SendDate,
        SendTime,
        SenderName,
        ReceiverName,
        OptionKey,
        OptionText,
        OptionRepeatStart,
        OptionRepeatEnd,
        OptionStart,
        OptionEnd,
        FeedBackOptionStart,
        FeedBackOptionEnd,
        MessageID,
        QueueID,
        NotifyUrl,
        Tag,
    }

    public enum ReceiverType
    {
        Department,
        User,
    }

    public enum UIDColumn
    {
        NodeType,
        Id,
        Name,
        DisplayName
    }

    public enum DeviceStatusCode
    {
        WorkOK = 100,
        BreakDown = 200,
    }

    public enum InfoTypeCode
    {
        Message = 100,
        Queue = 200,
    }

    public enum LogTypeCode
    {
        Error,
        Service,
    }

    public enum DeviceSubscriptionMode
    {
        Unknown = 0,
        ForceSend = 100,
        Forbidden = 200,
        Subscripted = 300,
        NotSubscripted = 400,
    }

    public enum UserParameterKey
    {
        MessageSwitcher,
    }

    public enum MessageSwitcherCode
    {
        On,
        Off,
    }

    public enum MessageFeedBackStatus
    {
        Normal = 100,
        New = 200,
    }

    public enum SendTypeCode
    {
        Application = 100,
        User = 200,
    }

    public enum PriorityCode
    {
        High = 300,
        Normal = 200,
        Low = 100,
    }

    public enum PoolFeatureCode
    {
        NoFeature = 0,
        NeedFeedBack = 1,
    }
}
